Skip to content

feat: add require_approval flag to reusable release workflows#75

Closed
crowecawcaw wants to merge 1 commit intoaws-deadline:mainlinefrom
crowecawcaw:feat/require-approval-flag
Closed

feat: add require_approval flag to reusable release workflows#75
crowecawcaw wants to merge 1 commit intoaws-deadline:mainlinefrom
crowecawcaw:feat/require-approval-flag

Conversation

@crowecawcaw
Copy link
Copy Markdown

What was the problem/requirement? (What/Why)

Releases require many approval steps that are not necesasary (though a few still are).

What was the solution? (How)

Add a require_approval boolean input (default: true) to all reusable workflows that use environment: release purely for gating and secrets access. When false, the workflow uses a release-no-approval-required environment that has the same secrets but no required reviewers.

This allows consuming repos to skip manual approval clicks for steps that don't need them, while keeping a single approval gate for manual testing.

Workflows that use the environment name semantically (integration_test, e2e_test, build_installers) are not changed, since the environment name is used for AWS role selection and CodeBuild project names.

Affected workflows:

  • reusable_bump.yml
  • reusable_tag_release.yml
  • reusable_prerelease.yml
  • reusable_release.yml
  • reusable_publish.yml
  • reusable_publish_python.yml
  • reusable_publish_v2.yml
  • reusable_release_installers.yml
  • reusable_build_and_stage_installers.yml

Prerequisites: A release-no-approval-required environment must be created in each consuming repo's GitHub settings with the same secrets as release but no required reviewers.

What is the impact of this change?

Enables us to remove some manual button clicking.

How was this change tested?

Not tested yet.

Was this change documented?

n/a

Is this a breaking change?

No. Workflows default to the current enviroments.


By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Add a `require_approval` boolean input (default: true) to all reusable
workflows that use `environment: release` purely for gating and secrets
access. When false, the workflow uses a `release-no-approval-required`
environment that has the same secrets but no required reviewers.

This allows consuming repos to skip manual approval clicks for steps
that don't need them, while keeping a single approval gate for manual
testing.

Workflows that use the environment name semantically (integration_test,
e2e_test, build_installers) are not changed, since the environment name
is used for AWS role selection and CodeBuild project names.

Affected workflows:
- reusable_bump.yml
- reusable_tag_release.yml
- reusable_prerelease.yml
- reusable_release.yml
- reusable_publish.yml
- reusable_publish_python.yml
- reusable_publish_v2.yml
- reusable_release_installers.yml
- reusable_build_and_stage_installers.yml

Prerequisites: A `release-no-approval-required` environment must be
created in each consuming repo's GitHub settings with the same secrets
as `release` but no required reviewers.

Signed-off-by: Stephen Crowe <6042774+crowecawcaw@users.noreply.github.com>
@crowecawcaw crowecawcaw requested a review from a team as a code owner April 16, 2026 20:28
@crowecawcaw crowecawcaw deleted the feat/require-approval-flag branch April 16, 2026 20:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant